package com.yuncheng.spcyApi.service;

import com.yuncheng.spcyApi.entity.SpcySqsxYwxx;
import com.yuncheng.common.base.service.BaseService;
import com.yuncheng.spcyApi.vo.jcy.HcyXpVo;

import java.util.List;

/**
 * @Description: 申请事项-业务信息
 * @Author: yuncheng
 * @Date: 2024-03-06
 * @Version: V1.0
 */
public interface ISpcySqsxYwxxService extends BaseService<SpcySqsxYwxx> {

    /**
     * 初始化添加-自动选派人员业务
     * */
    SpcySqsxYwxx addAutoXpryYwxx(HcyXpVo hcyXpVo);

    /**
     * 获取申请事项-自动选派人员任务列表
     * */
    List<SpcySqsxYwxx> getAutoXpryYwxxList(String sqsxid);

    /**
     * 获取申请事项-自动选派人员任务列表（执行中）
     * */
    List<SpcySqsxYwxx> getZxzAutoXpryYwxxList(String sqsxid);

    /**
     * 验证申请事项是否存在执行中自动选派人员任务
     * @return true: 存在
     * */
    boolean verifyAutoXpryYwxxIsExists(String sqsxid);

    /**
     * 更新在执行中的自动选派人员任务为结束
     * @param sqsxid
     */
    void updateAutoXpryYwxxByState(String sqsxid);

    /**
     * 更新自动选派人员数量，数量满足停止定时任务
     * @param id
     * @param fssk
     * @return null: 没满足
     */
    SpcySqsxYwxx updateAutoXpryTysl(String id, String fssk);

    /**
     * 更新同意自动选派人员业务-组长
     * */
    void updateAutoXpryInTyZzrs(String id, int num);

    /**
     * 更新同意自动选派人员业务-组员
     * */
    void updateAutoXpryInTyZyrs(String id, int num);

    /**
     * 更新同意自动选派人员业务-预备检查员
     * */
    void updateAutoXpryInTyYbrs(String id, int num);

}
